{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# EDA(Exploratury Data Analysis)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt\n",
    "import datetime\n",
    "import statistics\n",
    "import numpy as np\n",
    "import seaborn\n",
    "import warnings\n",
    "from scipy import stats\n",
    "import random\n",
    "warnings.filterwarnings(\"ignore\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "将数据读入内存，并打印数据集的大小以及前5行数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "142846\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>trip_id</th>\n",
       "      <th>starttime</th>\n",
       "      <th>stoptime</th>\n",
       "      <th>bikeid</th>\n",
       "      <th>tripduration</th>\n",
       "      <th>from_station_name</th>\n",
       "      <th>to_station_name</th>\n",
       "      <th>from_station_id</th>\n",
       "      <th>to_station_id</th>\n",
       "      <th>usertype</th>\n",
       "      <th>gender</th>\n",
       "      <th>birthyear</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>431</td>\n",
       "      <td>10/13/2014 10:31</td>\n",
       "      <td>10/13/2014 10:48</td>\n",
       "      <td>SEA00298</td>\n",
       "      <td>985.935</td>\n",
       "      <td>2nd Ave &amp; Spring St</td>\n",
       "      <td>Occidental Park / Occidental Ave S &amp; S Washing...</td>\n",
       "      <td>CBD-06</td>\n",
       "      <td>PS-04</td>\n",
       "      <td>Annual Member</td>\n",
       "      <td>Male</td>\n",
       "      <td>1960.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>432</td>\n",
       "      <td>10/13/2014 10:32</td>\n",
       "      <td>10/13/2014 10:48</td>\n",
       "      <td>SEA00195</td>\n",
       "      <td>926.375</td>\n",
       "      <td>2nd Ave &amp; Spring St</td>\n",
       "      <td>Occidental Park / Occidental Ave S &amp; S Washing...</td>\n",
       "      <td>CBD-06</td>\n",
       "      <td>PS-04</td>\n",
       "      <td>Annual Member</td>\n",
       "      <td>Male</td>\n",
       "      <td>1970.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>433</td>\n",
       "      <td>10/13/2014 10:33</td>\n",
       "      <td>10/13/2014 10:48</td>\n",
       "      <td>SEA00486</td>\n",
       "      <td>883.831</td>\n",
       "      <td>2nd Ave &amp; Spring St</td>\n",
       "      <td>Occidental Park / Occidental Ave S &amp; S Washing...</td>\n",
       "      <td>CBD-06</td>\n",
       "      <td>PS-04</td>\n",
       "      <td>Annual Member</td>\n",
       "      <td>Female</td>\n",
       "      <td>1988.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>434</td>\n",
       "      <td>10/13/2014 10:34</td>\n",
       "      <td>10/13/2014 10:48</td>\n",
       "      <td>SEA00333</td>\n",
       "      <td>865.937</td>\n",
       "      <td>2nd Ave &amp; Spring St</td>\n",
       "      <td>Occidental Park / Occidental Ave S &amp; S Washing...</td>\n",
       "      <td>CBD-06</td>\n",
       "      <td>PS-04</td>\n",
       "      <td>Annual Member</td>\n",
       "      <td>Female</td>\n",
       "      <td>1977.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>435</td>\n",
       "      <td>10/13/2014 10:34</td>\n",
       "      <td>10/13/2014 10:49</td>\n",
       "      <td>SEA00202</td>\n",
       "      <td>923.923</td>\n",
       "      <td>2nd Ave &amp; Spring St</td>\n",
       "      <td>Occidental Park / Occidental Ave S &amp; S Washing...</td>\n",
       "      <td>CBD-06</td>\n",
       "      <td>PS-04</td>\n",
       "      <td>Annual Member</td>\n",
       "      <td>Male</td>\n",
       "      <td>1971.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   trip_id         starttime          stoptime    bikeid  tripduration  \\\n",
       "0      431  10/13/2014 10:31  10/13/2014 10:48  SEA00298       985.935   \n",
       "1      432  10/13/2014 10:32  10/13/2014 10:48  SEA00195       926.375   \n",
       "2      433  10/13/2014 10:33  10/13/2014 10:48  SEA00486       883.831   \n",
       "3      434  10/13/2014 10:34  10/13/2014 10:48  SEA00333       865.937   \n",
       "4      435  10/13/2014 10:34  10/13/2014 10:49  SEA00202       923.923   \n",
       "\n",
       "     from_station_name                                    to_station_name  \\\n",
       "0  2nd Ave & Spring St  Occidental Park / Occidental Ave S & S Washing...   \n",
       "1  2nd Ave & Spring St  Occidental Park / Occidental Ave S & S Washing...   \n",
       "2  2nd Ave & Spring St  Occidental Park / Occidental Ave S & S Washing...   \n",
       "3  2nd Ave & Spring St  Occidental Park / Occidental Ave S & S Washing...   \n",
       "4  2nd Ave & Spring St  Occidental Park / Occidental Ave S & S Washing...   \n",
       "\n",
       "  from_station_id to_station_id       usertype  gender  birthyear  \n",
       "0          CBD-06         PS-04  Annual Member    Male     1960.0  \n",
       "1          CBD-06         PS-04  Annual Member    Male     1970.0  \n",
       "2          CBD-06         PS-04  Annual Member  Female     1988.0  \n",
       "3          CBD-06         PS-04  Annual Member  Female     1977.0  \n",
       "4          CBD-06         PS-04  Annual Member    Male     1971.0  "
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data = pd.read_csv('../data/2015_trip_data.csv')\n",
    "print(len(data))\n",
    "data.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "确定数据集的时间范围"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Data range of dataset: 1/1/2015 0:24 - 9/9/2015 9:59\n"
     ]
    }
   ],
   "source": [
    "data = data.sort_values(by='starttime')\n",
    "# For DataFrame with multi-level index, return new DataFrame with labeling information in the columns under the index names, defaulting to ‘level_0’, ‘level_1’, etc.\n",
    "data.reset_index()\n",
    "print('Data range of dataset: %s - %s' % (data['starttime'].iloc[0], data['stoptime'].iloc[len(data)-1]))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "绘制用户类型分布图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "usertype\n",
      "Annual Member             87360\n",
      "Short-Term Pass Holder    55486\n",
      "dtype: int64\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x937b8b4f60>"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x937b8b4860>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "groupby_user = data.groupby('usertype').size()\n",
    "print(groupby_user)\n",
    "groupby_user.plot.bar(title='Distribution of user types', width=0.8)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "绘制性别分布图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x937b8e8e10>"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x937b8ff588>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "groupby_gender = data.groupby('gender').size()\n",
    "groupby_gender.plot.bar(title='Distribution of genders')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "绘制出生年份分布图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x937b8ff4a8>"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x937b9bae80>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "data = data.sort_values(by='birthyear')\n",
    "groupby_birthyear = data.groupby('birthyear').size()\n",
    "groupby_birthyear.plot.bar(title='Distribution of birth years', figsize=(15, 4))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "绘制千禧一代中会员的频率分布图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x937ba20a58>"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x937bb2d940>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "data_mil = data[(data['birthyear']>=1977) & (data['birthyear']<=1994)]\n",
    "groupby_mil = data_mil.groupby('usertype').size()\n",
    "groupby_mil.plot.bar(title='Distribution of user types')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "根据性别绘制出生年份分布图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x937bb34898>"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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p0/niSee4IADDgCKe9eNGTOGj33sY/1ax4HkaZmSJEmShoXM5G1vexuHHXYYDz30EA8++CAvvvgin/70p7nzzjv55S9/2W9lLVq0qN/W1SyTO0mSJEnDwg033MDo0aM55phjABgxYgRf//rXOeecc/j4xz/OpZdeyrbbbsull14KwPTp09ljjz3YZJNNOPPMM5eu58c//jE77rgj2267Lf/2b/+2NJEbM2YMn/vc59hpp5246aab2t4+kztJkiRJw8K9997LDjvs8Kppq666KuPGjeMzn/kMRx55JHfeeSdHHnkkAPfffz+/+c1vuPXWW/n85z/PggULuO+++7j00kv54x//yJ133smIESO48MILAZg3bx5vfOMbueWWW9h1113b3j6vuZMkSZI0LGQmEdH09AMPPJBRo0YxatQoXvva1zJ79myuv/56brvtNiZOnAjAyy+/zGtf+1qg6Al8+9vfPrCNaMDkTpIkSdKwsNVWW3H55Ze/atrzzz/PY489xogRI5ZZftSoUUufjxgxgoULF5KZTJo0ia985SvLLD969Ohu19MunpYpSZIkaVjYa6+9eOmll/jRj34EFIOefPSjH+W9730v66yzDi+88EJT67jssst46qmnAHjmmWf4y1/+MqD1bpY9d5IkSZIGRTO3LuhPEcEVV1zBCSecwBe/+EUWL17MAQccwJe//GXmzZvHV7/6Vbbddls++clP1l3HlltuyZe+9CX22WcfFi9ezPLLL8+3v/1tNtpooza2pHsmd5IkSZKGjQ022ICrr756memjRo1iypQpdePuueeepc+PPPLIpYOu1HrxxRf7p5It8rRMSZIkSaoAkztJkiRJqgCTO0mSJEltk5mDXYUhqT+2i8mdJEmSpLYYPXo0Tz/9tAleF5nJ008/zejRo/u0HgdUkSRJktQWY8eOZdasWcyZM2ewqzLkjB49mrFjx/ZpHSZ3kiRJktpi+eWXZ+ONNx7salSWp2VKkiRJUgWY3EmSJElSBZjcSZIkSVIFmNxJkiRJUgWY3EmSJElSBZjcSZIkSVIFmNxJkiRJUgWY3EmSJElSBZjcSZIkSVIFmNxJkiRJUgWY3EmSJElSBTSV3EXE6hFxWUTcHxH3RcQ/R8RrIuLaiHio/LtGuWxExJkR8XBE3B0R29esZ1K5/EMRMWmgGiVJkiRJw02zPXffBH6d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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x937bb3fa20>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# unstack: 将gender列按照其内容展开，若为空则以0填充，类似于LabelEncoder\n",
    "groupby_birthyear_gender = data.groupby(['birthyear', 'gender'])['birthyear'].count().unstack('gender').fillna(0)\n",
    "groupby_birthyear_gender[['Male', 'Female', 'Other']].plot.bar(title='Distribution of birth years by Gender', stacked=True, figsize=(15, 4))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "根据用户类型绘制出生年份分布图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x937bc3def0>"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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pk+fPtjFkCRJkqRBERGPNDutl2VKkiRJUgWY3EmSJElSBZjcSZIkSVIFDOl77iRJkiQ19sILLzBv3jwWL1482EVRP4wcOZIxY8aw2mqrtTwPkztJkiSpg82bN4+1116bsWPHEhGDXRy1IDNZsGAB8+bNY9y4cS3Px8syJUmSpA62ePFiNthgAxO7DhYRbLDBBv1ufTW5kyRJkjqciV3nG4htaHInSZIkSRVgcidJkiRpyJs9ezYXX3zxYBdjSLNDFUmSJFXS2JOurTtu9mn7trEk6q8lS5YsT+4OP/zwwS7OkGVyJ0mSJGlAzZ49m/32248ZM2YAcPrpp/Pcc88xevRozjnnHEaMGME222zDlClTWLRoER/5yEe45557WLJkCaeccgoHHHAA559/Ptdeey2LFy9m0aJF/O1vf2PmzJlMmDCBo446iiuvvJKzzjqLCRMmAPCmN72Js88+myuvvJI//elPPProo8ydO5dPf/rTfPCDHwTgP//zP7nssst4/vnnec973sOXv/zlQVtHK4PJnSRJkqS2OO2003j44YdZY401WLhwIQCnnnoqb33rWznvvPNYuHAhkyZN4m1vexsAN998M3fffTejR49m6tSpnH766VxzzTUAjB49mvPPP58zzjiD+++/n+eff57x48dz5ZVXcvfdd3PLLbewaNEitt9+e/bdd19mzJjBAw88wLRp08hM3vWud/Hb3/6Wt7zlLYO2Pgaa99xJkiRJaovx48dzxBFHcNFFFzFiRNHOdN1113HaaacxYcIEdt99dxYvXsycOXMAePvb387o0aN7nNdBBx3ENddcwwsvvMB5553H0UcfvXzcAQccwMte9jI23HBD9thjD6ZNm8Z1113Hddddx/bbb88OO+zArFmzeOCBB1Z6ndvJljtJkiRJA2rEiBEsW7Zs+eeu57dde+21/Pa3v+Xqq6/mq1/9Kvfeey+ZyRVXXMGWW265wjxuvfVW1lxzzbrLGDVqFG9/+9u56qqruOyyy5g+ffrycd0fKxARZCaf/exn+ed//ueBqOKQZMudJEmSpAG18cYb88QTT7BgwQKef/55rrnmGpYtW8bcuXPZY489+MY3vsHChQt57rnn2HvvvTnrrLPITADuvPPOHue59tpr8+yzz64w7LjjjuOjH/0oO+200wotfFdddRWLFy9mwYIFTJ06lZ122om9996b8847j+eeew6ARx99lCeeeGIlrYHBYcudJEmSpAG12mqr8aUvfYmdd96ZcePGsdVWW7F06VLe//738/TTT5OZnHjiiay33np88Ytf5OMf/zjjx48nMxk7duzy++pqjR8/nhEjRrDddttx9NFHc+KJJ7LjjjuyzjrrcMwxx6ww7aRJk9h3332ZM2cOX/ziF9lkk03YZJNNmDlzJm984xsBWGuttbjooot4+ctf3pZ10g7RlSEPRRMnTsza5lVJkiSpWavKoxBmzpzJ1ltvPdjFGBSPPfYYu+++O7NmzWLYsOKixFNOOYW11lqLT37yk4Ncur7raVtGxO2ZObGZeC/LlCRJktRxLrzwQnbeeWdOPfXU5Yndqs7LMiVJkiR1nCOPPJIjjzzyJcNPOeWU9hdmiDDFlSRJkqQKMLmTJEmSpAowuZMkSZKkCjC5kyRJkqQKsEMVSZIkqUIaPQKiFc0+NuInP/kJ733ve5k5cyZbbbXVgJahN2PHjmX69OlsuOGGLxm+2Wab8bvf/W75sAkTJrBkyRJmzJjR7+UeffTR7Lfffhx44IH9ntdAsOVOkiRJUr9dcskl7LrrrkyZMmWwi7KCZ599lrlz5wLFc+SGiqVLlw74PE3uJEmSJPXLc889x0033cS55567QnI3depUdt99dw488EC22morjjjiCDITKFrVTj75ZHbYYQe23XZbZs2aBRSPMjj99NOXz+MNb3gDs2fPBuDd7343O+64I69//euZPHlyU2U7+OCDufTSS4EiAT3ssMOWj1u6dCmf+tSn2GmnnRg/fjzf+973lpd7t9124+CDD2aLLbbgpJNO4kc/+hGTJk1i22235U9/+tPyedxwww28+c1vZosttuCaa67pdb577LEHhx9+ONtuu22f1nEzTO4kSZIk9ctPf/pT9tlnH7bYYgtGjx7NHXfcsXzcnXfeyRlnnMF9993HQw89xE033bR83IYbbsgdd9zBv/zLv6yQ0NVz3nnncfvttzN9+nTOPPNMFixY0GvMgQceyJVXXgnAz372M/bff//l484991zWXXddbrvtNm677Ta+//3v8/DDDwNw11138e1vf5t77rmHH/7wh9x///1MmzaN4447jrPOOmv5PGbPns1vfvMbrr32Wj70oQ+xePHihvOdNm0ap556Kvfdd1+vZe8rkztJkiRJ/XLJJZdw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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x937bbf6d30>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "groupby_birthyear_gender = data.groupby(['birthyear', 'usertype'])['birthyear'].count().unstack('usertype').fillna(0)\n",
    "groupby_birthyear_gender[['Annual Member']].plot.bar(title='Distribution of birth years by Usertype', stacked=True, figsize=(15, 4))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "验证有没有为短期通行证持有者提供出生年份"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "True"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data[data['usertype']=='Short-Term Pass Holder']['birthyear'].isnull().values.all()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "验证有没有为短期通行证持有者提供性别"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "True"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data[data['usertype']=='Short-Term Pass Holder']['gender'].isnull().values.all()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "将字符串转换为日期时间格式，并获得新的特征"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "list_ = list(data['starttime'])\n",
    "list_ = [datetime.datetime.strptime(x, '%m/%d/%Y %H:%M') for x in list_]\n",
    "data['starttime_mod'] = pd.Series(list_, index=data.index)\n",
    "data['starttime_date'] = pd.Series([x.date() for x in list_], index=data.index)\n",
    "data['starttime_year'] = pd.Series([x.year for x in list_], index=data.index)\n",
    "data['starttime_month'] = pd.Series([x.month for x in list_], index=data.index)\n",
    "data['starttime_day'] = pd.Series([x.day for x in list_], index=data.index)\n",
    "data['starttime_hour'] = pd.Series([x.hour for x in list_], index=data.index)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "绘制每天的行程持续时间分布图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x937c4915f8>"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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0viRc9bZuYtLJw+P9/NcChxSLVsMrUZarfHF7zoHOAfgiCOOSLfeems9VRQRERERERk4ZvZIvXkbelpmvHvnauBlwM7xslaAffF304CfkdsvKrIVMA5/p82m8VWmERERERERkRbU87TM8XHGDjPbDngdMAO4Cn+xKvjLUn8dny+L/4n0acmf2nIZcEI8TfMA/KW8N7drRkRERERERMayei7L3BuYEvfdbQH8NKX0WzO7F7g4XvT6V+DcyH8ucJGZzcTP2J0AkFK6x8x+CtwLDAGn6kmZIiIiIiIi7THiqxC6SffciYiIiIjIWGZmt6WUjqgnb0P33ImIiIiIiEhvUudORERERERkAKhzJyIiIiIiMgDUuRMRERERERkA6tyJiIiIiIgMAHXuRJo0efJkJk+e3O1qiIiIiIgA6tyJiIiIiIgMBHXuREREREREBoA6dyIiIiIiIgNAnTsREREREZEBoM6diIiIiIjIAFDnTkREREREZACocyciIiIiIjIA1LkTEREREREZAOrciYiIiIiIDAB17kRERERERAaAOnciIiIiIiIDQJ07ERERERGRAaDOnYiIiIiIyABQ505ERERERGQAqHMnIiIiIiIyANS5ExERERERGQDq3ImIiIiIiAwAde5EREREREQGgDp3IiIiIiIiA0CdOxERERERkQGgzp2IiIiIiMgAGLFzZ2b7mdlVZjbDzO4xs4/E+Mlm9piZTY+/N+em+aSZzTSz+83sjbnxR8W4mWY2qTOzJCIiIiIiMvZsVUeeIeD0lNLtZrYjcJuZXRlpX0sp/W8+s5kdCpwAPA94BvAnM3tOJJ8NvB6YC9xiZpellO5tx4yIiIiIiIiMZSN27lJK84H58XmFmc0A9imZ5Bjg4pTSOmC2mc0Ejoy0mSmlWQBmdnHkVedORERERESkRQ3dc2dmE4AXAjfFqNPM7E4zO8/Mdolx+wCP5iabG+NqjRcR6TlnnzKt21UQERERaUjdnTsz2wH4BfBvKaXlwHeBA4HD8TN7Z2VZq0yeSsYXv+dkM7vVzG594okn6q2eiIiIiIjImFZX587MtsY7dv+XUvolQErp8ZTScEppI/ADKpdezgX2y02+LzCvZPxmUkrnpJSOSCkdMX78+EbnR0REREREZEyq52mZBpwLzEgpfTU3fu9ctuOAu+PzZcAJZratmR0AHATcDNwC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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x937c49f470>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "data.groupby('starttime_date')['tripduration'].mean().plot.bar(title='Distribution of Trip duration by date', figsize=(15, 4))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "使用统计软件包确定测度中心"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Mean of trip duration: 1210.937242\n",
      "Median of trip duration: 646.159000\n",
      "Mode of station originating from: Pier 69 / Alaskan Way & Clay St\n"
     ]
    }
   ],
   "source": [
    "trip_duration = list(data['tripduration'])\n",
    "station_from = list(data['from_station_name'])\n",
    "print('Mean of trip duration: %f' % statistics.mean(trip_duration))\n",
    "print('Median of trip duration: %f' % statistics.median(trip_duration))\n",
    "print('Mode of station originating from: %s' % statistics.mode(station_from)) # 众数"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "绘制行程持续时间直方图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x937ecd1c50>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# bins这个参数指定bin(箱子)的个数,也就是总共有几条条状图\n",
    "data['tripduration'].plot.hist(bins=100, title='Frequency distribution of Trip duration')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "绘制行程持续时间的箱形图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x9300dbb828>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "box = data.boxplot(column=['tripduration'])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "确定行程持续时间离群值与观察值的比例"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Proportion of values as outlier: 9.177016 percent\n"
     ]
    }
   ],
   "source": [
    "# 小于这个值的观察值占总数q的百分比，参数分别为: a 输入数组，q 要计算的百分位数，在 0~100 之间，axis 沿着它计算百分位数的轴，二维取值0，1\n",
    "q75, q25 = np.percentile(trip_duration, [75, 25])\n",
    "iqr = q75 - q25\n",
    "percent = (len(data) - len([x for x in trip_duration if q75+(1.5*iqr) >= x >= q25-(1.5*iqr)]))*100/float(len(data))\n",
    "print('Proportion of values as outlier: %f percent' % (percent))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "计算行程持续时间内观察值的z-分数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Mean of trip duration: 724.883361\n"
     ]
    }
   ],
   "source": [
    "mean_trip_duration = np.mean([x for x in trip_duration if q75+(1.5*iqr) >= x >= q25-(1.5*iqr)])\n",
    "upper_whisker = q75+(1.5*iqr)\n",
    "print('Mean of trip duration: %f' % (mean_trip_duration))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "计算行程持续时间内观察值的平均数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x9300e1df28>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "def transform_tripduration(x):\n",
    "    if x > upper_whisker:\n",
    "        return mean_trip_duration\n",
    "    return x\n",
    "data['tripduration_mean'] = data['tripduration'].apply(lambda x: transform_tripduration(x))\n",
    "data['tripduration_mean'].plot.hist(bins=100, title='Frequency distribution of mean transformed Trip duration')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "在没有离群值的情形下计算测度中心"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Mean of trip duration: 724.883361\n",
      "Standard deviation of trip duration: 440.712850\n",
      "Median of trip duration: 646.159000\n"
     ]
    }
   ],
   "source": [
    "print('Mean of trip duration: %f' % (data['tripduration_mean'].mean()))\n",
    "print('Standard deviation of trip duration: %f' % (data['tripduration_mean'].std()))\n",
    "print('Median of trip duration: %f' % (data['tripduration_mean'].median()))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "行程持续时间和年龄的散点图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x9300d6ef60>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "data = data.dropna()\n",
    "now = list(2019 * np.ones(len(data)))\n",
    "data['now'] = now\n",
    "data['age'] = data['now'] - data['birthyear']\n",
    "data.drop('now',axis=1, inplace=True)\n",
    "# vars: 只留几个特征两两比较, kind: 给非单变量图增加线性画图样式\n",
    "seaborn.pairplot(data, vars=['age', 'tripduration'], kind='reg')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "行程持续时间和年龄的相关系数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "              tripduration    age\n",
      "tripduration         1.000  0.058\n",
      "age                  0.058  1.000\n"
     ]
    }
   ],
   "source": [
    "pd.set_option('display.width', 100)\n",
    "pd.set_option('precision', 3)\n",
    "correlations = data[['tripduration', 'age']].corr(method='pearson')\n",
    "print(correlations)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "计算性别和用户类型的双尾t检验"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Category: gender\n",
      "\n",
      "Female Male\n",
      "Statistic: -30.351548, P value: 0.000000\n",
      "\n",
      "Female Other\n",
      "Statistic: 37.992048, P value: 0.000000\n",
      "\n",
      "Male Other\n",
      "Statistic: 42.221381, P value: 0.000000\n",
      "\n",
      "Category: usertype\n",
      "\n"
     ]
    }
   ],
   "source": [
    "for cat in ['gender', 'usertype']:\n",
    "    print('Category: %s\\n' % (cat))\n",
    "    groupby_category = data.groupby(['starttime_date', cat])['starttime_date'].count().unstack(cat)\n",
    "    groupby_category = groupby_category.dropna()\n",
    "    category_names = list(groupby_category.columns)\n",
    "    for comb in [(category_names[i], category_names[j]) for i in range(len(category_names)) for j in range(i+1, len(category_names))]:\n",
    "        print('%s %s' % (comb[0], comb[1]))\n",
    "        # Calculates the T-test for the means of TWO INDEPENDENT samples of scores.\n",
    "        t_statistics = stats.mstats.ttest_ind(list(groupby_category[comb[0]]), list(groupby_category[comb[1]]))\n",
    "        print('Statistic: %f, P value: %f\\n' % (t_statistics.statistic, t_statistics.pvalue))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "在行程数据集上验证中心极限定理"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x93011867b8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "daily_tickets = list(data.groupby('starttime_date').size())\n",
    "sample_tickets = []\n",
    "checkpoints = [1, 10, 100, 300, 500, 1000]\n",
    "plot_count = 1\n",
    "random.shuffle(daily_tickets)\n",
    "plt.figure(figsize=(15, 7))\n",
    "binrange = np.array(np.linspace(0, 700, 101))\n",
    "for i in range(1000):\n",
    "    if daily_tickets:\n",
    "        sample_tickets.append(daily_tickets.pop())\n",
    "    if i+1 in checkpoints or not daily_tickets:\n",
    "        plt.subplot(2, 3, plot_count)\n",
    "        plt.hist(sample_tickets, binrange)\n",
    "        plt.title('n=%d' % (i+1), fontsize=15)\n",
    "        plot_count += 1\n",
    "    if not daily_tickets:\n",
    "        break\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "raw",
   "metadata": {},
   "source": [
    "随着样本容量的增加，分布似乎变成了正态分布，验证了中心极限定理。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
